1,755 research outputs found

    Chain Reduction for Binary and Zero-Suppressed Decision Diagrams

    Full text link
    Chain reduction enables reduced ordered binary decision diagrams (BDDs) and zero-suppressed binary decision diagrams (ZDDs) to each take advantage of the others' ability to symbolically represent Boolean functions in compact form. For any Boolean function, its chain-reduced ZDD (CZDD) representation will be no larger than its ZDD representation, and at most twice the size of its BDD representation. The chain-reduced BDD (CBDD) of a function will be no larger than its BDD representation, and at most three times the size of its CZDD representation. Extensions to the standard algorithms for operating on BDDs and ZDDs enable them to operate on the chain-reduced versions. Experimental evaluations on representative benchmarks for encoding word lists, solving combinatorial problems, and operating on digital circuits indicate that chain reduction can provide significant benefits in terms of both memory and execution time

    Noncooperative algorithms in self-assembly

    Full text link
    We show the first non-trivial positive algorithmic results (i.e. programs whose output is larger than their size), in a model of self-assembly that has so far resisted many attempts of formal analysis or programming: the planar non-cooperative variant of Winfree's abstract Tile Assembly Model. This model has been the center of several open problems and conjectures in the last fifteen years, and the first fully general results on its computational power were only proven recently (SODA 2014). These results, as well as ours, exemplify the intricate connections between computation and geometry that can occur in self-assembly. In this model, tiles can stick to an existing assembly as soon as one of their sides matches the existing assembly. This feature contrasts with the general cooperative model, where it can be required that tiles match on \emph{several} of their sides in order to bind. In order to describe our algorithms, we also introduce a generalization of regular expressions called Baggins expressions. Finally, we compare this model to other automata-theoretic models.Comment: A few bug fixes and typo correction

    Run Generation Revisited: What Goes Up May or May Not Come Down

    Full text link
    In this paper, we revisit the classic problem of run generation. Run generation is the first phase of external-memory sorting, where the objective is to scan through the data, reorder elements using a small buffer of size M , and output runs (contiguously sorted chunks of elements) that are as long as possible. We develop algorithms for minimizing the total number of runs (or equivalently, maximizing the average run length) when the runs are allowed to be sorted or reverse sorted. We study the problem in the online setting, both with and without resource augmentation, and in the offline setting. (1) We analyze alternating-up-down replacement selection (runs alternate between sorted and reverse sorted), which was studied by Knuth as far back as 1963. We show that this simple policy is asymptotically optimal. Specifically, we show that alternating-up-down replacement selection is 2-competitive and no deterministic online algorithm can perform better. (2) We give online algorithms having smaller competitive ratios with resource augmentation. Specifically, we exhibit a deterministic algorithm that, when given a buffer of size 4M , is able to match or beat any optimal algorithm having a buffer of size M . Furthermore, we present a randomized online algorithm which is 7/4-competitive when given a buffer twice that of the optimal. (3) We demonstrate that performance can also be improved with a small amount of foresight. We give an algorithm, which is 3/2-competitive, with foreknowledge of the next 3M elements of the input stream. For the extreme case where all future elements are known, we design a PTAS for computing the optimal strategy a run generation algorithm must follow. (4) Finally, we present algorithms tailored for nearly sorted inputs which are guaranteed to have optimal solutions with sufficiently long runs

    Improved Parallel Rabin-Karp Algorithm Using Compute Unified Device Architecture

    Full text link
    String matching algorithms are among one of the most widely used algorithms in computer science. Traditional string matching algorithms efficiency of underlaying string matching algorithm will greatly increase the efficiency of any application. In recent years, Graphics processing units are emerged as highly parallel processor. They out perform best of the central processing units in scientific computation power. By combining recent advancement in graphics processing units with string matching algorithms will allows to speed up process of string matching. In this paper we proposed modified parallel version of Rabin-Karp algorithm using graphics processing unit. Based on that, result of CPU as well as parallel GPU implementations are compared for evaluating effect of varying number of threads, cores, file size as well as pattern size.Comment: Information and Communication Technology for Intelligent Systems (ICTIS 2017

    Knuthian Drawings of Series-Parallel Flowcharts

    Full text link
    Inspired by a classic paper by Knuth, we revisit the problem of drawing flowcharts of loop-free algorithms, that is, degree-three series-parallel digraphs. Our drawing algorithms show that it is possible to produce Knuthian drawings of degree-three series-parallel digraphs with good aspect ratios and small numbers of edge bends.Comment: Full versio

    A Portable High-Quality Random Number Generator for Lattice Field Theory Simulations

    Full text link
    The theory underlying a proposed random number generator for numerical simulations in elementary particle physics and statistical mechanics is discussed. The generator is based on an algorithm introduced by Marsaglia and Zaman, with an important added feature leading to demonstrably good statistical properties. It can be implemented exactly on any computer complying with the IEEE--754 standard for single precision floating point arithmetic.Comment: pages 0-19, ps-file 174404 bytes, preprint DESY 93-13

    Pattern Avoidance in Poset Permutations

    Full text link
    We extend the concept of pattern avoidance in permutations on a totally ordered set to pattern avoidance in permutations on partially ordered sets. The number of permutations on PP that avoid the pattern π\pi is denoted AvP(π)Av_P(\pi). We extend a proof of Simion and Schmidt to show that AvP(132)≤AvP(123)Av_P(132) \leq Av_P(123) for any poset PP, and we exactly classify the posets for which equality holds.Comment: 13 pages, 1 figure; v2: corrected typos; v3: corrected typos and improved formatting; v4: to appear in Order; v5: corrected typos; v6: updated author email addresse

    Growth and characterization of GaAs nanowires on carbon nanotubes composite films: toward flexible nanodevices

    Full text link
    Poly(ethylene imine) functionalized carbon nanotube thin films, prepared using the vacuum filtration method, were decorated with Au nanoparticles by in situ reduction of HAuCl4 under mild conditions. These Au nanoparticles were subsequently employed for the growth of GaAs nanowires (NWs) by the vapor-liquid-solid process in a gas source molecular beam epitaxy system. The process resulted in the dense growth of GaAs NWs across the entire surface of the single-walled nanotube (SWNT) films. The NWs, which were orientated in a variety of angles with respect to the SWNT films, ranged in diameter between 20 to 200 nm, with heights up to 2.5 um. Transmission electron microscopy analysis of the NW-SWNT interface indicated that NW growth was initiated upon the surface of the nanotube composite films. Photoluminescence characterization of a single NW specimen showed high optical quality. Rectifying asymmetric current-voltage behavior was observed from contacted NW ensembles and attributed to the core-shell pn-junction within the NWs. Potential applications of such novel hybrid architectures include flexible solar cells, displays, and sensors

    New Variants of Pattern Matching with Constants and Variables

    Full text link
    Given a text and a pattern over two types of symbols called constants and variables, the parameterized pattern matching problem is to find all occurrences of substrings of the text that the pattern matches by substituting a variable in the text for each variable in the pattern, where the substitution should be injective. The function matching problem is a variant of it that lifts the injection constraint. In this paper, we discuss variants of those problems, where one can substitute a constant or a variable for each variable of the pattern. We give two kinds of algorithms for both problems, a convolution-based method and an extended KMP-based method, and analyze their complexity.Comment: 15 pages, 2 figure

    Primality Testing with Artin Symbols

    Full text link
    Wetensch. publicati
    • …
    corecore